home *** CD-ROM | disk | FTP | other *** search
-
- -------------------------------------------------------------------------
- RawInsert 1.1 (24.11.93) (w) Franz_Schwarz@mil.ka.sub.org - Public Domain
- -------------------------------------------------------------------------
-
- RawInsert ist ein Hilfsprogramm für die Shell ab Amiga-OS2.04 oder höher,
- das es Ihnen ermöglicht, beliebigen Text und andere Eingabe-Ereignisse wie
- Mausbewegungen, Diskettenwechsel, Maus-Tasten-Betätigungen, etc, in den
- Eingabestrom einzufügen. Dies ist besonders bei der Arbeit mit Stefan
- Becker's Toolmanager nützlich, da so viele GUI-Applikationen ganz oder
- teilweise von ARexx-Skripten oder Stapelverarbeitungsdateien aus gesteuert
- werden können.
-
-
- Die Kommandozeilen-Argument-Schablone von RawInsert lautet:
-
- "DELAY=MILLISECS=MS/K/N,DESCR=D/S,FROM=FILE/K,TEXT/F"
-
-
- Dabei bedeuten:
-
- DELAY=MILLISECS=MS/K/N - Hier kann angegeben, wieviel Zeit in Millisekunden
- zwischen dem Einfügen von zwei InputEvents in den Eingabestrom gewartet
- werden soll. Voreingestellt ist 2, gültig sind Werte von 0 (keine Pause)
- bis 999.
-
- DESCR=D/S - falls angegeben, interpretiert RawInsert die Quelldaten nicht
- als reinen ASCII-Text (Voreinstellung), sondern als Eingabe-Ereignis-
- Beschreibungsdaten. Diese bestehen dabei aus normalem ASCII-Text, der
- zusätzlich folgende ESC-Sequenzen enthalten kann:
- \n - Zeilenende (wird als Wagenrücklauf eingefügt)
- \r - Wagenrücklauf
- \0 - nul
- \t - horizontaler Tabulator
- \f - Seitenende
- \xff - ASCII-Code 0xff (f steht für beliebiges Hex-Nibble)
- \' - Apostroph
- \" - Anführungszeichen
- \< - linke spitze Klammer '<'
- \\ - Backslash '\'
- Zudem können einzelne Eingabe-Ereignisse innerhalb spitzer Klammern
- entsprechend Commodities' ParseIX() - Syntax spezifiziert werden.
- Gültige Eingabe-Ereignis-Beschreibungsdaten wären z.B.
- '<lcommand a><tab>Hello!<alt -capslock numericpad enter>\x06\t\5*x\<12\n'
-
- FROM=FILE/K - Hier kann eine Datei angegeben werden, aus der die
- Quell-Daten gelesen werden sollen. Darf nicht zusammen mit TEXT/F
- angegeben werden.
-
- TEXT/F - Die Quelldaten als Kommandozeilen-Argument. Inkompatibel mit
- FROM=FILE/K.
-
- Falls keines der Argumente FROM=FILE/K und TEXT/F angegeben wurde, wird der
- aktuelle Eingabekanal als Daten-Quelle herangezogen.
-
- Zeilenende-Zeichen (0x0a) werden von RawInsert automatisch in
- Wagenrückläufe umgewandelt. Weiterhin werden Wagenrückläufe immer als
- Betätigung der einfachen Wagenrücklauftaste in den Eingabestrom eingefügt,
- sofern diese in der aktuellen System-Standard-Tastenbelegung mit
- dem Wagenrücklauf-Zeichen belegt ist.
-
- Falls der DESCR=D/S-Schalter angegeben wird, schlägt RawInsert fehl, meldet
- dies, und retourniert 20 (Dos.fail), sobald ein Zeichen oder eine
- Eingabe-Ereignis-Beschreibung innerhalb spitzer Klammern nicht korrekt in
- ein Eingabe-Ereignis (InputEvent) umgesetzt werden kann. RawInsert fügt in
- diesem Fall auch kein einziges Eingabe-Ereignis in den Eingabestrom ein.
-
- Ohne Anführung des DESCR=D/S-Schalters setzt RawInsert hingegen, falls für
- ein ASCII-Zeichen mit der aktiven System-Standard-Tastaturbelegung kein
- entsprechendes Eingabe-Ereignis generiert werden kann, die Arbeit beim
- nächsten Zeichen fort, und terminiert nach der Umsetzung des letzten
- Zeichens mit dem Rückgabewert 5 (Dos.warn).
-
- Falls Fehler beim Lesen der Quelldaten auftreten, terminiert RawInsert
- und gibt Dos.fail (20) zurück, ohne zuvor die bereits gelesenen
- Quelldaten bearbeitet zu haben.
-
- Zu den Quelldaten ist zu bemerken, daß sämtliche NUL-Zeichen (0x00)
- ausgefiltert werden, d.h. Sie können NUL nur dann in den Eingabestrom
- einfügen, wenn Sie den DESCR=D/S-Schalter spezifizieren und das NUL-Zeichen
- mit einer ESCape-Sequenz oder mit einer Eingabe-Ereignis-Beschreibung
- innerhalb spitzer Klammern umschreiben.
-
-
-
- Implementationshinweis: RawInsert verwendet die vom Autor geschriebenen
- Module CxLib (entspricht Commodore's cx.lib) und BlackMagic (universelles
- Modul - in RawInsert werden v.a. dessen Routinenn für dynamische Strings
- verwendet)
-
-
-
- RawInsert ist reentrant, 'pure'. Da es zudem trotz seiner
- Leistungsfähigkeit ziemlich klein ist, wird empfohlen, es resident zu
- machen. ('resident c:RawInsert')
-
-
-
- Evolution von RawInsert
-
- v1.0 25-Jul-93 fSchwarz
- v1.0a 22-Nov-93 fSchwarz adapted to 3.0 interface modules
- v1.1 24-Nov-93 fSchwarz now sets the timeStamp of the
- InputEvents
-
-
-
-
- RawInsert ist Public Domain, d.h., es ist frei kopierbar und verwendbar,
- der Autor überträgt das Urheberrecht am Programm der Allgemeinheit. Eine
- wie auch immer geartete Haftung des Autors für Schäden, die unmittelbar
- oder mittelbar von dem Gebrauch von RawInsert herrühren, ist schon deshalb
- selbstverständlich definitiv ausgeschlossen. Die Verwendung von RawInsert
- erfolgt auf Ihr eigenes Risiko. In angelsächsischem Jargon wird dies
- gemeinhin als 'Use At Your Own Risk' bezeichnet.
-
-
-
- RawInsert geschrieben und nicht urheberrechtlich geschützt, 1993 by
- Franz Schwarz, Mühlenstraße 2, D-78591 Durchhausen, Germany.
- uucp: Franz_Schwarz@mil.ka.sub.org
-
-
- Anregungen, Kritik, Flames, Geld, Gold, Disketten, Bier, Schokolade,
- nette Postkarten, e-mails, etc. sind jederzeit herzlich
- willkommen!;-)
-
-
- Bye
- Franz 'Blacky' Schwarz
-
-
- -Girlfriend Is Better - Talking Heads-
-
-